A Microcontroller unit (MCU) is small computer formed on an integrated circuit. MCUs provide embedded control of a wide range of devices, such as electric motors, voltage regulators, office machines, appliances, implantable medical devices, etc.
An MCU includes a central processing unit (CPU), memory, and other components. Program memory stores a main program and a reset program (sometimes referred to as “boot code”). Program are typically stored in non-volatile flash memory.
A program includes a sequence of instructions that is derived by compiling a program written in human readable source code. On request, the CPU executes a program, instruction by instruction, until termination.
MCU program memory is organized into an array of addressable units. Instructions and data of a program are stored in addressable units of program memory. Each instruction or unit of data can be fetched from program memory at an address thereof.